|
ブート()または ブートストラップ()は、コンピュータシステムの電源投入時、あるいはシステムのリセット後、モニタやOSなどなんらかの基本的なシステムソフトウェアを主記憶に展開し、ユーザプログラムを実行できるようにするまでの処理の流れをいう。ブートローダ()は、以上のプロセスで使われるローダ、すなわち、不揮発性の補助記憶にある目的のプログラムを読出し、揮発性の主記憶に書込むプログラムのことである。 電源投入時のブートのことを「コールドブート」、リセットされたことによるブートを「ウォームブート」と言う。ウォームブートでは、コールドブートにおける最初のほうの手続きのいくつかが必要無い場合もあり、そういった手続きを省略することもある。 ブートストラップまたはブートストラップローダ()という名前は、ブーツのつまみ革()を自分で引っ張って自分を持ち上げようとするイメージから来ている〔pull oneself up by one's bootstraps Wiktionary〕。つまり、コンピュータはプログラムをロードしないと動作できないが、プログラムをロードするプログラムはどうロードするのだ? というパラドックスに着目した呼称である。 ==歴史== 初期のENIACではスイッチ群とプラグボードを使い、人手でプログラムを入力していた(正確に言えば配線を変えていた)。といったような説明から始める者もいるが、そもそもENIACはプログラム内蔵方式ではなく、プラグボードによる配線そのものがプログラミングであるので、この話のスコープ外である。 プログラム内蔵方式のコンピュータで、主記憶装置が揮発性メモリなら、何らかの処理でプログラムやOSを主記憶にロードすることが必要である。後述のようにIBM 701以降とする主張もある。 EDSAC(1949年稼働)の起動時実行コードはイニシャルオーダ () と呼ばれ、非常に技巧的なわずか数十語のコードで単純なアセンブラの機能を実現していた。英語版WikipediaのEDSAC#System_softwareを参照。EDSACのプログラム技法は成書「」として広まり、パラメトロンコンピュータPC-1他のイニシャルオーダ (イニシャルインプットルーチンとも) がEDSACのイニシャルオーダの影響を受けて作成された。 EDSACの技法は成書として公刊されたため、同様のローダーがこの時代の多くのコンピュータで開発・使用されたが、そのローダをどうロードするか、という点では各種の手法があった。当時はそれらのうちの1つの手法を「ブートストラップ方式」と呼んでいた。ILLIAC Iの方式がブートストラップである。〔パラメトロン計算機: Illiacのブートストラップ 〕 1950年代の IBM 701 以降、何らかのブート処理でプログラムやOSを主記憶にロードするようになった。IBMのメインフレームではこれを "Initial Program Load" と称している。''Load Card''、''Load Tape''、''Load Drum'' などと表示されたボタンを押下するとハードウェアの論理回路が対応する周辺機器からブートプログラムを読み込み、それを実行する。するとブートプログラムがより大きなプログラムを自動的にロードする。「ブート」という言葉は1958年からこの意味で使われている。 言葉の歴史としては、自分自身で自分のための土台を用意する、といったような意味では、電子回路の分野にもブートストラップという手法がある。またロバート・A・ハインラインの1941年の小説''By His Bootstraps''(邦題「時の門」)でも、そのような意味でブートストラップという語を使っている。 DEC PDP-8 以降のミニコンピュータでは、フロントパネルにあるスイッチ群を操作して短いプログラムを入力する方法が採用された。初期のミニコンピュータは磁気コアメモリを使っており、電源を切っても情報は失われない。従ってブートローダーは消去されない限りメモリ上に存在し続けるが、バグのあるプログラムを実行して全メモリの内容を上書きしてしまうこともある。PDP-11でも同様の手法を採用したが、後にDECはオプションで32ワード(64バイト)のブートプログラムを格納したROMを追加できるようにした。このROMは集積回路ではなく、M792というUnibus用カードであり、32×16のダイオードアレイで回路を構成している。ダイオードが通電する部分のビットは1になり、通電しないようダイオードを除くと対応するビットが0になる。DECは様々な周辺機器からのブートに対応するため、同様のカードを BM792-Yx シリーズとして販売した〔PDP-11 Peripherals Handbook, DEC, 1975, p.4-25〕〔M792-YB bootstrap diode matrix ROMカードの写真〕。 以下の歴史は一直線であるかのように書かれているが、メインフレームの歴史がミニコンの歴史で、ミニコンの歴史がマイクロプロセッサの歴史で、といったように似たようなことが、コンピュータの通史としては何度も繰り替えされているので、実際の詳細は必ずしも一直線ではない。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「ブート」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Booting 」があります。 スポンサード リンク
|